Distributed ledger systems (DLSs), which can also be referred to as consensus networks, and/or blockchain networks, enable participating entities to securely, and immutably store data. DLSs are commonly referred to as blockchain networks without referencing any particular user case. Examples of types of blockchain networks can include public blockchain networks, private blockchain networks, and consortium blockchain networks. A consortium blockchain network is provided for a select group of entities, which control the consensus process, and includes an access control layer.
Blockchain networks can operate on distributed computing platforms such as Ethereum. An Ethereum blockchain can be viewed as a transaction-based state machine. Ethereum can have a global “shared-state” referred to as a world state. The world state of Ethereum can include objects formed by Ethereum accounts. Each account can have a state and a corresponding address. The world state comprises a mapping between account addresses and account states. The mapping is stored in a data structure known as a Merkle Patricia tree (MPT).
In some cases, nodes of the blockchain network, and/or nodes that communicate with the blockchain network can operate using trusted execution environments (TEEs). The TEE can include an enclave trusted computing base (TCB) within hardware (one or more processors, memory) that is isolated from the hardware's operating environment (e.g., operating system (OS), basic input/output system (BIOS)). The TCB can include an Ethereum virtual machine (EVM) to process calls from applications outside of the enclave. In some cases, one or more values of a world state MPT stored outside of the TCB are retrieved by the EVM to process the calls within the TCB. After processing, the processing result of the call is output from the TCB to update the world state MPT. The data processing from transporting data between trusted and untrusted environments can consume additional computing resources and compromise data processing efficiency. It would be desirable to process the calls at least partially based on data stored in the TCB to reduce data traffic between trusted and untrusted environments to reduce computing resource consumption and improve data processing efficiency.